#ifndef NODE_H
#define NODE_H

#include "SceneGraphHeader.h"

class Node : public Spatial
{
public:
	Node ( int iQuantity = 1, int iGrowBy = 1 );
	virtual ~Node ();

	int GetQuantity () const; //?
	int GetUsed () const; //?
	int AttachChild ( Spatial* pkChild ); // returns the posistion of the child added
	int DetachChild ( Spatial* pkChild ); // returns the now null pointer pos
	SpatialPtr DetachChildAt ( int i ); // returns the child that was detached
	SpatialPtr SetChild ( int i, Spatial* pkChild ); // returns the child that was orignanlly at pos i;
	SpatialPtr GetChild ( int i); // returns child at pos i

protected:
	//TArray<SpatialPtr> m_kChild; // change to lsit.
	int m_iUsed; // indicates how many of the array slots are non-null pointers
};

#endif